1. Field of the Invention
Embodiments of the invention relates to the field of microprocessors, and more specifically, to performance characterization.
2. Description of Related Art
One of the features of current advanced micro-architectures is the thermal throttling capability that allows a processor to degrade performance gracefully when the thermal conditions exceed its design specifications. With the thermal throttling capability, a processor may operate at various performance states, corresponding to different effective frequencies, according to power or thermal conditions. However, this new feature presents new challenges to performance engineers when analyzing systems with processors operating at extreme conditions or defective processors. Most performance methodologies and tools may report confusing or misleading results when the basic processor operating frequencies can be dynamically changed. Although there may be status registers in the processor that report the throttling conditions of the processor, there is a lack of quantitative measurement that can characterize the extent of thermal throttling and its impact on system and application performance.
Most existing techniques or tools typically estimate the time to execute a number of instructions to determine the processor operating frequency. These techniques have a number of drawbacks. First, as processors become faster and faster, it is more and more difficult to estimate the execution time of a few instructions. Long measurement periods may introduce additional tasks, such as operating system (OS) background jobs, which contribute to the elapsed time, resulting in inaccuracy. Second, it is difficult to estimate execution time for advanced processor architectures such as superscalar pipelining, instruction reorder buffering, and instruction level parallelism. Third, most techniques require an idle system to execute instructions in an undisturbed condition. Processors with thermal throttling capability may exhibit different frequency characteristics, depending on the work load being run at the time. Therefore, measurements obtained during a thermal condition may result in inaccuracies.